package org.jeecg.modules.system.rule;

import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang.math.RandomUtils;
import org.jeecg.common.handler.IFillRuleHandler;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @author wmf
 * 公共编码实现类，
 * 返回： 编码前缀 + 年份 + 随机数 + 生成时间戳
 */
public class CommonCodeRule implements IFillRuleHandler {

    @Override
    public Object execute(JSONObject params, JSONObject formData) {
        // 编码前缀
        String prefix = "";
        if (formData != null){
            prefix = formData.getString("prefix");
        }
        SimpleDateFormat format = new SimpleDateFormat("yyyy");
        long time = System.currentTimeMillis() / 1000;
        int random = RandomUtils.nextInt(9989) + 10;
        String value = prefix + format.format(new Date()) + random + time;
        return value;
    }
}
